Windowing environments have emerged as the most popular graphical user interface in the world. Windowing environments provide a multitasking, graphical-based interface that runs programs for a wide-variety of applications (spreadsheets, word processing, desktop publishing, drawing, etc.) which have a relatively consistent appearance and command structure. The windowing environment presents the user with specially delineated areas called windows on a display, each of which is dedicated to a particular application program, file or document. The windows can typically be re-sized, moved around on the display, and stacked so as to overlay other windows. Currently, the windowing environment allows windows to be increased to a full-screen display or minimized, meaning the window is reduced to and denoted by an icon.
The windows environment starts with a desktop window that displays icons representing programs, files and resources available to the user. As such, the desktop window acts as a launching point for running application programs, opening documents or files, and initiating operating system services. The desktop window cannot be minimized or closed. Instead, the desktop window always remains as a full-screen background display upon which other windows overlay.
One area that primarily uses a windowing environment is in Internet-based applications. The Internet is a worldwide collection of cooperating computer networks. A user typically accesses the Internet through a "client" computer. The client computer communicates with a "server" computer on a remote computer network using telephone, ISDN, or T1 lines or similar physical connections. The server computer may display or download content (e.g., images, text, application programs, etc.) to the client computer for viewing or execution by the user.
The client and server computers communicate through software protocols, such as File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), Hypertext Transfer Protocol (HTTP), Gopher, etc. Currently HTTP is the most widely used protocol and is used for accessing the World Wide Web.
The World Wide Web consists of interconnected computer networks having computers, also referred to as "sites," which make multi-media documents in HTML format generally available for downloading or retrieval by individuals having a computer with Internet access. The documents are generally created in Hypertext Markup Language (HTML). Each HTML document supports embedded hyperlinks that reference other locations (folder, FTP site, other HTML documents, etc.) allowing the system (i.e., client computer) to jump to another location when the user selects a hyperlink by clicking on the hyperlink or pressing an appropriate keystroke.
Uniform Resource Locators (URL) are used in conjunction with hyperlinks to identify the location to which the system jumps. URLs typically define a protocol to be used, the domain name of a server computer, the port address to be used for communication, and the directory path to access a desired document. Thus, when a user selects a hyperlink, the system uses a URL to establish communication with a server computer designated in the URL and displays a document or content retrieved from the server.
HTML also allows graphical images to be embedded in HTML documents. When a graphical image is embedded in an HTML document, the dimensions or size of the embedded graphical image may be defined with HTML statements. For example, the size of an embedded graphical image may be defined in HTML by &lt;IMG SRC="file.gif" WIDTH=X HEIGHT=Y&gt;, where IMG is an HTML tag referencing an embedded image, SRC="file.gif" defines the location and name of the file containing the graphical image embedded in the HTML document, (e.g., a Graphics Information file or *.GIF) and X,Y are the respective width and height of the graphical image measured in pixels.
Software object components also may be used with the HTML document for displaying executable content, such as for animations or information processing. Currently, most Internet browsers support embedded software object components in the form of ActiveX controls, Java applets, and Visual Basic Scripts. These software object components are inserted into HTML documents using the &lt;Insert&gt; or &lt;Object&gt; HTML tags.
The above-described protocols and HTML documents are the underlying structure for most Internet-based applications. One such Internet-based application achieving wide-spread success is called Internet broadcasting. Internet broadcasting effectively turns a computer terminal into a high-tech television set, allowing a client computer to change "channels" for displaying news, sports scores, stock charts, weather updates and other kinds of information which are downloaded from the Internet. The information displayed for the channels is dynamically updated, such as through scheduled downloads.
One provider of an Internet broadcasting application is PointCast Inc., (http://www.pointcast.com). PointCast provides an Internet broadcast application on its Internet site so that a user can download the application to the user's computer. The Internet broadcast application executes as a windowed application in the windowing environment on the user's computer. In the application's window, the Pointcast application displays a channel viewer. The channel viewer contains different panes for filtering, organizing, and reading news. One pane lists a collection of channels encompassing such topics as companies, industries, life styles, news, and sports. When a user selects a channel, a second pane is displayed showing a list of current stories relating to the selected channel. If a user selects a story, the full text for that story is displayed on a third pane. The software allows a user to personalize the makeup of each channel. For example, a user can choose options to have only NBA scores posted under a sports channel, while excluding NHL and NFL scores. The PointCast software can also be used for displaying a screen saver which is triggered after a predetermined period of inactivity on the client computer.
The PointCast application has several drawbacks. For example, all of the content displayed on the client computer is delivered from a single server computer called the Internet broadcasting server (e.g., the PointCast server), rather than directly from the content providers. Thus, the information provided is only as up-to-date as the Internet broadcasting server. Additionally, if a user is interested in displaying content not available on the Internet broadcasting server, there is no means for integrating that content into the Internet broadcast. The content available from the Internet broadcasting server also lacks hyperlinks for jumping to other documents on other server computers. Furthermore, there is no means for scanning or navigating through content that has been selected.
The present invention provides Internet-broadcaster functionality integrated into a desktop window on a client computer. The desktop window is called an "active" desktop because rich multimedia documents are integrated therein and the documents are automatically updated and dynamically displayed. The documents are retrieved directly from the content providers so they are as up-to-date as possible. Additionally, the desktop provides documents containing hyperlinks so that a user has access to information on multiple server computers.
In one aspect of the invention, a client computer connects to a computer network, such as the Internet, and retrieves a "main" channel guide containing a list of content providers from which a user can select one or more content providers. Based on the user's selections, the client computer retrieves one or more documents associated with a content provider selected from the channel guide. The one or more documents are then integrated into the desktop window on the client computer.
In another aspect of the invention, the user may customize which documents are displayed from a selected content provider. In such a case, a user selects a content provider and a list of document preferences associated with the selected content provider are displayed. The user may then select the desired document preferences. Each document preference selected results in the display of one or more documents related to that preference.
In another aspect of the invention, the document retrieved contains hyperlinks, thereby allowing a user to select a hyperlink and jump to another document (e.g., folder, HTTP or FTP site, other HTML documents, etc.) associated with the hyperlink. The document may be an HTML document with hyperlinks embedded therein.
In yet another aspect of the invention, documents are provided from multiple servers, and the documents are sequentially displayed in the desktop window. Thus, a user is provided with the most up-to-date content from selected content providers. The system accomplishes this by storing URLs for the content providers selected from the channel guide in user-preference storage, such as in entries of a registry on the client computer.
In still a further aspect of the invention, content providers not listed in the channel guide are able to provide their own channel guide and display documents on the desktop of the client computer. Special controls (ActiveX Controls, Java applets, VB Scripts, etc.) are used by content providers not listed in the channel guide to display the documents. The control allows for storage of a URL corresponding to the content providers in the user-preference storage.
Thus, using the present invention, rich multimedia documents are integrated directly into the desktop window on a client computer. The documents are HTML and may include VB scripts, java applets and hyperlinkable content allowing the user to browse a computer network, such as the Internet or Intranet. Further, the present invention allows content providers listed and content providers not listed in the channel guide to display documents in the desktop window. Finally, the content displayed is the most up-to-date content, since it is provided directly from the content providers.
Additional features and advantages of the invention will be made apparent from the following detailed description of an illustrated embodiment which proceeds with reference to the accompanying drawings.